home *** CD-ROM | disk | FTP | other *** search
/ Belgian Amiga Club - ADF Collection / BS1 part 19.zip / BS1 part 19 / Lattice C disk 4.adf / Compiler_Headers / graphics / view.h < prev   
C/C++ Source or Header  |  1988-10-25  |  2KB  |  77 lines

  1. #ifndef GRAPHICS_VIEW_H
  2. #define GRAPHICS_VIEW_H
  3. /*
  4. **    $Filename: graphics/view.h $
  5. **    $Release: 1.3 $
  6. **
  7. **    
  8. **
  9. **    (C) Copyright 1985,1986,1987,1988 Commodore-Amiga, Inc.
  10. **        All Rights Reserved
  11. */
  12.  
  13. #ifndef GRAPHICS_GFX_H
  14. #include <graphics/gfx.h>
  15. #endif
  16.  
  17. #ifndef GRAPHICS_COPPER_H
  18. #include <graphics/copper.h>
  19. #endif
  20.  
  21. struct ColorMap
  22. {
  23.    UBYTE Flags;
  24.    UBYTE Type;
  25.    UWORD Count;
  26.    APTR     ColorTable;
  27. };
  28. /* if Type == 0 then ColorTable is a table of UWORDS xRGB */
  29.  
  30. struct ViewPort
  31. {
  32.    struct   ViewPort *Next;
  33.    struct   ColorMap  *ColorMap;    /* table of colors for this viewport */
  34.           /* if this is nil, MakeVPort assumes default values */
  35.    struct   CopList  *DspIns;        /* user by MakeView() */
  36.    struct   CopList  *SprIns;        /* used by sprite stuff */
  37.    struct   CopList  *ClrIns;        /* used by sprite stuff */
  38.    struct   UCopList *UCopIns;        /* User copper list */
  39.    SHORT    DWidth,DHeight;
  40.    SHORT    DxOffset,DyOffset;
  41.    UWORD    Modes;
  42.    UBYTE    SpritePriorities;        /* used by makevp */
  43.    UBYTE    reserved;
  44.    struct   RasInfo *RasInfo;
  45. };
  46.  
  47. struct View
  48. {
  49.    struct ViewPort *ViewPort;
  50.    struct cprlist *LOFCprList;     /* used for interlaced and noninterlaced */
  51.    struct cprlist *SHFCprList;     /* only used during interlace */
  52.    short DyOffset,DxOffset;   /* for complete View positioning */
  53.                   /* offsets are +- adjustments to standard #s */
  54.    UWORD   Modes;          /* such as INTERLACE, GENLOC */
  55. };
  56.  
  57. /* defines used for Modes in IVPargs */
  58. #define PFBA        0x40
  59. #define DUALPF        0x400
  60. #define HIRES        0x8000
  61. #define LACE        4
  62. #define HAM        0x800
  63. #define SPRITES        0x4000        /* reuse one of plane ctr bits */
  64. #define VP_HIDE        0x2000        /* reuse another plane crt bit */
  65. #define GENLOCK_AUDIO    0x100
  66. #define GENLOCK_VIDEO    2
  67. #define EXTRA_HALFBRITE 0x80
  68.  
  69. struct RasInfo    /* used by callers to and InitDspC() */
  70. {
  71.    struct   RasInfo *Next;        /* used for dualpf */
  72.    struct   BitMap *BitMap;
  73.    SHORT    RxOffset,RyOffset;        /* scroll offsets in this BitMap */
  74. };
  75.  
  76. #endif    /* GRAPHICS_VIEW_H */
  77.